package cn.shiro.shiroservice.moudle.db.service;

import cn.shiro.shiroservice.moudle.db.pojo.dto.TableStructureDTO;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageInfo;

import java.util.List;
import java.util.Map;

/**
 * &#064;Time 2024 一月 星期三 22:31
 *
 * @author ShangGuan
 */
public interface DatabaseService {

    /**
     * 获取数据库版本
     *
     * @return {@link String}
     */

    String getDataBaseVersion();
    /**
     * 显示数据库
     *
     * @return {@link List}<{@link String}>
     */

    List<String> showDatabase();

    /**
     * 显示表格
     *
     * @return {@link List}<{@link String}>
     */

    List<String> showTables();


    /**
     * 获取表结构
     *
     * @param tableName 表名称
     * @return {@link List}<{@link TableStructureDTO}>
     */

    List<TableStructureDTO> getTableStructure(String tableName);
    /**
     * 选择表格
     *
     * @param tableName 表名称
     * @return {@link List}<{@link Object}>
     */

    List<Map<String,Object> >selectTable(String tableName);


    PageInfo<?> page(String tableName, Integer pageNum, Integer pageSize);


}
